#ifndef _MUTEX_H_
#define _MUTEX_H_

#ifdef WIN32
	#include "windows.h"
#endif

class GMutex
{
public:
	GMutex();
	virtual ~GMutex();

	void Lock();
	void UnLock();

private:
#ifdef WIN32
	CRITICAL_SECTION m_Lock;
#else
	pthread_mutex_t m_Lock; 
#endif


};

class GAutoMutex
{
public:
	explicit GAutoMutex();
	virtual ~GAutoMutex();

private:
	GMutex m_mutex;
};

#endif